用户基础信息

一、应用场景

用户基础信息是提供给第三方应用管理和查询用户信息的功能。第三方应用可以通过用户基础信息获取物联云平台的用户信息,以及对其进行管理。用户基础信息的调用目前提供两种方式,企业成员级别的调用和平台级别的调用。使用企业成员级别的调用时,需要确保该企业成员具有相应的权限。

  • 用户上传个人的头像。

二、功能说明

用户信息会通过自主注册或第三方平台登录被创建至物联云平台中。第三方应用可通过物联云平台提供的接口获取已创建的用户信息。

三、前提条件

1.用户自主完成账号注册。
2.用户已通过第三方平台登录至物联云平台。

四、关键流程

4.1 用户信息管理

流程说明:

  • 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
  • 其次,C端APP用户使用物联网中台刷新凭证发起 查询用户详细信息 或者 设置用户基本信息 请求。
  • 再次,物联网中台接收到 查询用户详细信息 或者 设置用户基本信息 请求,根据请求类别不同进行不同的业务逻辑处理。
  • 最后,物联网中台根据不同的请求类别返回不同的响应信息。

用户信息管理

4.2 管理台查询用户信息

流程说明:

  • 首先,B端成员登录到物联网中台,获取到物联网中台的成员级调用凭证以及刷新凭证。
  • 其次,B端成员使用物联网中台刷新凭证发起 管理台查询用户信息 请求。
  • 再次,物联网中台接收到 管理台查询用户信息 请求,以C端App用户标识为条件查询用户详细信息。
  • 最后,物联网中台返回C端App用户详细信息,企业管理台使用用户详细信息进行页面渲染。

管理台查询用户信息

4.3 设置用户头像

流程说明:

  • 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
  • 其次,C端APP用户将要设置为头像的图片上传至云端,即是发起 上传用户头像 请求,物联网中台接收到该请求进行存储返回头像图片对应的链接地址。
  • 最后,C端APP用户发起 设置用户基本信息 请求,将上一步的图片链接地址设置为头像地址,物联网中台接收到请求后更新C端APP用户信息。

设置用户头像

4.4 设置用户关联的应用

流程说明:

  • 首先,B端成员登录到物联网中台,获取到物联网中台的成员级调用凭证以及刷新凭证。
  • 其次,B端成员使用物联网中台刷新凭证发起 设置用户关联的应用 请求。
  • 再次,物联网中台接收到 设置用户关联的应用 请求,将用户归属到某个应用下,从使得用户发送短信等业务可以使用应用下的通用配置。
  • 最后,物联网中台返回设置结果。

设置用户关联的应用

4.5 更新用户手机号码

流程说明:

  • 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
  • 其次,C端APP用户在APP上输入要更新的手机号,同时向物联网中台发起 请求发送手机验证码,将收到的手机验证码填入APP发起 通过原始密码以及验证码修改手机号码 或者 通过验证码修改手机号码 进行手机更换;由于企业设置了一个手机号码一天内获取验证码的阈值,需要通过图片验证码才能获取手机验证码,因此如果被限流之后APP需要向物联网中台发起 请求用于发送短信的图片验证码 请求获取图片验证码。
  • 最后,物联网中台接收到用户更新手机号的请求,进行一系列业务校验之后更新C端App用户关联的手机号码。
  • 其中 通过原始密码以及验证码修改手机号码 属于强认证更新, 通过验证码修改手机号码 属于若认证更新 ,各款App按需使用。

更新用户手机号码

五、API列表

5.1 用户基础信息

5.1.1 查询用户详细信息

接口描述

用户自身或者用户归属企业管理者根据标识查询用户的基础信息;用户只可以查询自身的基础信息;企业管理者可以查询企业下的所有用户基础信息

请求方式

GET

请求地址

/v2/user/{user_id}

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业成员
企业用户
Empower
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true String 用户标识

请求示例:

{
}

返回参数说明

名称 必填 类型 备注
id true Int 用户标识
nickname true String 用户昵称
status true Int 用户状态
1:启用
2:停用
source true Int 用户来源 用户来源,枚举:
1:web
2:android
3:ios
4:wechat
5:qq
6:weibo
7:facebook
8:twitter
9:sms
10:other
region_id false String 用户所属区标识
corp_id true String 企业标识
account true String 用户账号
create_date true String 用户创建时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’
is_vaild true Boolean 用户是否激活
ali_pay_open_id false String 阿里第三方标识
authorize_code false String 用户授权码
avatar false String 用户头像
qq_open_id false String qq第三方标识
wx_open_id false String 微信第三方标识
wb_open_id false String 微博第三方标识
fb_open_id false String facebook第三方标识
register_ip false String 用户注册ip
tt_open_id false String twitter第三方标识
apple_open_id false String 苹果第三方标识
other_open_id false String 其他第三方标识
google_open_id false String 谷歌第三方标识
country false String 用户所在国家
province false String 用户所在省份
city false String 用户所在城市
plugin_id false String 用户归属应用标识
gender true Int 用户性别
1: 男
2: 女
3:其他
address false String 用户所在地址
age false Int 用户年龄
birth_date false String 用户出生年月,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’
certificate_type false Int 用户认证类型
1: 身份证
2:护照
3: 军官证
4: 港澳通行证
certificate_no false String 用户证件号码
last_auth_date false String 用户最近一次登录时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’
passwd_inited false String 用户账号是否初始化密码
privacy_code false String 用户隐私码
tags false Array 用户标签列表
setting false Object 用户设置
setting.message false Array 消息接收设置
setting.message.type false Int 消息类型的接收设置,枚举:
1:设备告警
2:设备通知
3:系统广播
4:用户发给用户
5:家庭留言
setting.message.receive false Boolean 是否接收该类型的消息
setting.message_inform false Array 消息提示方式设置
setting.message_inform.type false Int 用户消息的提示方式,枚举:
1:提示音
2:震动
setting.message_inform.enable false Boolean 提示音方式是否启用

返回示例:

{
	"id": 456461245,
	"nickname": "李清华",
	"status": 1,
	"source": 1,
	"region_id": "1001",
	"corp_id": "1235646556dsf56s4df",
	"account": "liqinghua@xlink.cn",
	"create_date": "2019-12-16T16:00:00.000Z",
	"email": "liqinghua@xlink.cn",
	"phone": "13838383388",
	"active_date": "2019-12-16T16:00:00.000Z",
	"is_vaild": true,
	"ali_pay_open_id": "126456sdf65dsf",
	"authorize_code": "12asd1fdsf",
	"avatar": "http://www.baidu.com",
	"qq_open_id": "123s1fsdf1we3fdf",
	"wx_open_id": "dsfsd1f2sd3f1sdf5",
	"wb_open_id": "sdf123fdsf1sd23fsd",
	"fb_open_id": "sfsfsdfs123f32sdf65",
	"register_ip": "127.0.0.1",
	"tt_open_id": "fsdafsd56sd1fds1f2",
	"apple_open_id": "sf1sd2f1sdfsd0fdsf",
	"other_oppen_id": "sdfs1f2sd1f23sd1f2",
	"google_open_id": "sfs21f2sd4f54dff",
	"country": "中国",
	"province": "广东",
	"city": "广州",
	"plugin_id": "12d2sf56s4f612ds3",
	"gender": 1,
	"address": "中国广东广州黄埔",
	"age": 18,
	"birth_date": "2019-12-16T16:00:00.000Z",
	"certificate_type": 1,
	"certificate_no": "5621456456sd6faf123df",
	"last_auth_date": "2019-12-16T16:00:00.000Z",
	"passwd_inited": true,
	"privacy_code": "1235s6fds51f65564saf6ds",
	"tags": ["123456fds56aewd"],
	"setting": {
		"message": [{
			"type": 1,
			"receive": true
		}],
		"message_inform": [{
			"type": 1,
			"enable": true
		}]
	}
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4001115 用户性别未知
4001116 用户区域错误

5.1.2 设置用户基本信息

接口描述

用户自身或者用户归属企业管理者根据标识设置用户的基础信息;用户只可以设置自身的基础信息;企业管理者可以设置企业下的所有用户基础信息

请求方式

PUT

请求地址

/v2/user/{user_id}

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业成员
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
nickname body false String 用户昵称
remark body false String 用户备注
avatar body false String 用户头像
country body false String 用户所在国家
province body false String 用户所在省份
city body false String 用户所在城市
gender body true Int 用户性别
1: 男
2: 女
3:其他
address body false String 用户所在地址
age body false Int 用户年龄
birth_date body false String 用户出生年月,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’
certificate_type body false Int 用户认证类型
1: 身份证
2:护照
3: 军官证
4: 港澳通行证
certificate_no body false String 用户证件号码
tags body false Array 用户标签列表

请求示例:

{
	"nickname": "李清华",
	"remark": "初级互联网用户",
	"tags": ["123565s21fdf"],
	"avatar": "http://www.baidu.com",
	"address": "中国广东广州黄埔",
	"age": 10,
	"gender": 1,
	"certificate_type": 1,
	"certificate_no": "5516463212654655",
	"birth_date": "2019-12-16T16:00:00.000Z"
}

返回参数说明

名称 必填 类型 备注

返回示例:

{
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在

5.1.3 管理台查询用户信息

接口描述

企业管理台企业成员查询某个C端用户的信息,用户在管理台展示用户具体信息

请求方式

GET

请求地址

/v2/user/{user_id}/fullinfos

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业成员
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true Int 用户标识

请求示例:

{
}

返回参数说明

名称 必填 类型 备注
id true Int 用户标识
nickname true String 用户昵称
status true Int 用户状态
1:启用
2:停用
source true Int 用户来源 用户来源,枚举:
1:web
2:android
3:ios
4:wechat
5:qq
6:weibo
7:facebook
8:twitter
9:sms
10:other
create_date true String 用户创建时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’
is_vaild true Boolean 用户是否激活
avatar false String 用户头像
country false String 用户所在国家
province false String 用户所在省份
city false String 用户所在城市
gender true Int 用户性别
1: 男
2: 女
3:其他
age false Int 用户年龄
passwd_inited false String 用户账号是否初始化密码
tags false Array 用户标签列表
tags.id false String 用户标签标识
tags.name false String 用户标签名称
tags.type false Int 用户标签类型
1: 黑名单
2: 白名单
3: 灰名单
tags.colour false String 用户标签颜色
open_ids false Array 用户关联的第三方标识列表
open_ids.id false Array 第三方标识
open_ids.type false Int 第三方标识类型
1:邮箱
2:手机
3:身份证
4:微信
5:QQ
6:微博
7:指纹

返回示例:

{
    "id": 1234598522,
    "phone": "138383388",
    "email": "liqinghua@xlink.cn",
    "nickname": "李清华",
    "create_date": "2019-12-16T16:00:00.000Z",
    "status": 1,
    "source": 1,
    "is_valid": true,
    "avatar": "http://www.baidu.com",
    "country": "中国",
    "province": "广东",
    "city": "广州",
    "gender": 1,
    "passwd_inited": true,
    "age": 10,
    "tags": [{
        "id": "123566512",
        "name": "互联网用户",
        "type": 1,
        "colour": "FFFFFF"
    }],
    "open_ids": [{
        "id": "23wrer233454",
        "type": 1
    }]
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在

5.1.4 查询用户激活状态

接口描述

C端用户根据自身账号以及密码确认自身账号是否已激活,该接口支持邮箱和手机号作为自身账号,但优先取手机号

请求方式

POST

请求地址

/v2/users/valid

请求头

名称 必填 类型 备注
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
corp_id body true String 用户所在企业
phone body false String 用户手机号
email body false String 用户邮件
password body true String 用户密码

请求示例:

{
    "corp_id": "123564safewd12fd",
    "phone": "13838383388",
    "email": "liqinghua@xlink.cn",
    "password": "Test@#$%^&"
}

返回参数说明

名称 必填 类型 备注
valid true Boolean 是否已激活

返回示例:

{
	"valid":true
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在

5.1.5 上传用户头像

接口描述

C端用户上传头像图片得到头像地址,进而将头像地址设置到自身的用户基础信息中,用于登录后个人形象的展示; 该接口非Restful风格接口,其请求体为头像图片二进制流, 图片大小限制为5M

请求方式

POST

请求地址

/v2/user/avatar/upload?avatarType=xxxx

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
avatarType query true String 头像文件类型,后缀

请求示例:

二进制字节流

返回参数说明

名称 必填 类型 备注
url true String 头像地址

返回示例:

{
	"url":"http://www.baidu.com"
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4001060 图片大小超过上限

5.1.6 设置用户关联的应用

接口描述

企业用户在企业管理台中的用户运营模块,为某个多个用户设置关联的应用标识,如果用户注册的时候有关联某个应用则会进行替换

请求方式

POST

请求地址

/v2/users/binding-plugin

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业成员
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
plugin_id body true String 用户关联的应用标识
user_ids body true Array 用户标识列表

请求示例:

{
    "plugin_id": "ew124daff2d1fdfd",
    "user_ids": [
        451441268
    ]
}

返回参数说明

名称 必填 类型 备注

返回示例:

{
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4041020 应用不存在

5.1.7 更新用户手机号码

功能描述

C端用户在已登录的情况下,通过手机验证码更换或认证手机号码。该功能包括四个相关接口分别为:

  • 请求发送验证码
  • 请求用于发送短信的图片验证码
  • 通过验证码和密码完成修改
  • 通过验证码完成修改
5.1.7.1 请求发送手机验证码

接口描述

用户在已登录的情况下,请求发送验证码,用于进行修改手机号码,用于证明要更新手机号码的合法性

请求方式

POST

请求地址

/v2/user/{user_id}/phone/sms_verifycode

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true Int 用户标识
phone body true String 手机号码
phone_zone body true String 手机号码区号
captcha body false String 手机号获取验证码到达了企业设置的次数之后需要的图片验证码

请求示例:

{
    "phone":"13838383388",
    "phone_zone":"+86",
    "captcha":"562126"
}

返回参数说明

名称 必填 类型 备注

返回示例:

{
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4001094 手机号已存在
4001052 触发手机验证码限制
4001154 需要图片验证码
4001155 图片验证码不存在
4001156 图片验证码错误
4001094 手机号已存在
5.1.7.2 请求用于发送短信的图片验证码

接口描述

用户在已登录的情况下,当请求发送验证码一天内达到一定次数时候,需要验证图片验证码,本接口返回图片验证码地址

请求方式

POST

请求地址

/v2/user/{user_id}/phone/sms_captcha

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true Int 用户标识
phone body true String 手机号码
phone_zone body true String 手机号码区号

请求示例:

{
    "phone":"13838383388",
    "phone_zone":"+86"
}

返回参数说明

名称 必填 类型 备注
url true String 图片验证码地址

返回示例:

{
    "url":"http://www.baidu.com"
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
5.1.7.3 通过原始密码以及验证码修改手机号码

接口描述

用户在已登录的情况下,通过原始密码和验证码修改手机号码,此举属于安全级别较高的修改手机号码

请求方式

PUT

请求地址

/v2/user/{user_id}/phone

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true Int 用户标识
phone body true String 手机号码
phone_zone body true String 手机号码区号
verifycode body true String 手机验证码
password body true String 用户登录密码

请求示例:

{
    "phone":"13838383388",
    "phone_zone":"+86",
    "verifycode":"856326",
    "password":"Test@#$%^&"
}

返回参数说明

名称 必填 类型 备注

返回示例:

{
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4001124 用户未初始化密码
4001094 手机号码已被使用
5.1.7.4 通过验证码修改手机号码

接口描述

用户在已登录的情况下,通过验证码修改手机号码,不需要原始密码,此举属于安全级别较低的修改手机号码.修改时需要校验Phone号码是否被其他用户已绑定

请求方式

PUT

请求地址

/v2/user/{user_id}/update-phone

请求头

名称 必填 类型 备注
Access-Token true String 调用凭证
企业用户
Content-Type true String application/json

请求参数

名称 位置 必填 类型 备注
user_id path true Int 用户标识
phone body true String 手机号码
phone_zone body true String 手机号码区号
verifycode body true String 手机验证码

请求示例:

{
    "phone":"13838383388",
    "phone_zone":"+86",
    "verifycode":"123456"
}

返回参数说明

名称 必填 类型 备注

返回示例:

{
}

错误码:

错误码 描述
4001001 请求数据字段验证不通过
4001002 请求数据必须字段不可为空
4031001 调用凭证权限被禁止访问
4031003 无效的调用凭证
4031002 需要调用凭证
4041001 接口不存在
5031001 系统错误
4031024 权限不足
4041011 用户不存在
4001124 用户未初始化密码
4001094 手机号码已被使用
没找到需要的文档?
你可以提交工单反馈 或 阅读常见问题